/****
 * 
 * 封装
 * 
 * 继承
 * 
 * 多态
 */


interface IAction {
    say():void;
}
abstract class People implements IAction{
    name: string
    // private name:string
    constructor(){
        this.name = "人类"
        console.log("this is super")
    }
    say(){
        console.log("我是个人类",this.name)
    }
    // private eat(){
    //     console.log("eat")
    // }
    abstract  businesssCard():void
}

class BxEmployee extends People{
    businesssCard(): void {
        console.log("公司员工")
    }
}

class Aiya extends People{
    constructor(name:string){
        super()
        this.name =name 
    }
    businesssCard(): void {
        console.log("AI虚拟品牌官")
    }
    say(): void {
        console.log("我是虚拟数字员工AIYA艾雅")
    }
}
const man = new Aiya("艾雅")
man.name
// man.say()
// const employee = new BxEmployee()
// employee.say()
function test(man:People){
    console.log(man.say())
}
